package com.healthcare.common.handler;

import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
import lombok.extern.slf4j.Slf4j;
import org.apache.ibatis.reflection.MetaObject;
import org.springframework.stereotype.Component;

import java.util.Date;

/**
 * 作者：LSH
 * 日期：2020/1/7 18:13
 * 自动填充类，每次新增修改的时候自动
 */
@Component
@Slf4j
public class CommonMetaObjectHandler implements MetaObjectHandler {

    @Override
    public void insertFill(MetaObject metaObject) {
        log.info("start insert fill ....");
        this.setFieldValByName("gmtCreate", new Date(), metaObject);
        this.setFieldValByName("gmtModified", new Date(), metaObject);
    }

    @Override
    public void updateFill(MetaObject metaObject) {
          // 如果使用new Date() 时间会使用数据库时间
        log.info("start update fill ....");
        this.setFieldValByName("gmtModified", new Date(), metaObject);
    }

    // 获取当前时间的方法 时区会变成格尼时间，比北京时间慢8小时，这边我加8个小时
    public static Date times(){
        Date date = new Date();
        date.setHours(date.getHours() + 8);
        return date;
    }
}
